Methods And Computer Program Products For Defing Synchronous Replication Devices In A Subchannel Set Other Than Subchannel Set Zero

ABSTRACT

Exemplary embodiments of the present invention define PPRC devices within subchannel sets other than subchannel set zero. Further, for all PPRC paired n devices an additional N/2 PPRC primary device numbers and subchannels are provided within subchannel set zero by moving PPRC secondary devices to any subchannel set other than subchannel set zero.

CROSS-REFERENCE TO OTHER APPLICATIONS AND PATENTS

Reference is made to the following co-pending application, U.S. patentapplication Ser. No. ______, entitled “Methods and Computer ProgramProducts for Swapping Synchronous Replication Secondaries from aSubchannel Set other than Zero to Subchannel Set Zero using DynamicI/O,” filed ______.

Reference is also made to U.S. Pat. No. 6,973,586, entitled “System andMethod for Automatic Dynamic Address Switching,” filed Apr. 29, 2002,and U.S. Pat. No. 7,085,956, entitled “System and Method for ConcurrentLogical Device Swapping,” filed Apr. 29, 2002. The above-referencedpatent application and issued patents are assigned to the same assigneeas this application, International Business Machines Corporation ofArmonk, N.Y. Each of the listed application and patents is herebyincorporated herein by reference in its entirety.

BACKGROUND OF THE INVENTION

1. Field of the Invention

This invention relates to channel input/output (I/O) operations, andparticularly to the defining of synchronous replication devices withinsubchannel sets other than subchannel set zero.

2. Description of Background

Channel I/O broadly refers to any I/O architecture that is employedwithin a computing architecture environment. Generally, channel I/O isimplemented by the use of a plurality of dedicated I/O controllers—orprocessors—working in conjunction with a CPU in order to ensure theefficient transfer of data within a computing system environment. Assuch, the I/O controller is supplied with enough onboard logic andmemory to autonomously handle a CPU's I/O task processing request.

In operation, the CPU will deliver channel programs to an I/Ocontroller, the channel programs providing the I/O controller with thecapability to complete any desired I/O task that is necessitated withinthe system without the burdening the CPU with the performance of the I/Oprocessing task. Upon the completion of the I/O task, or in the event ofall error, the I/O controller will communicate the status of the task tothe CPU by way of an interrupt.

In configuration, a channel is an independent hardware component that isimplemented to coordinate I/O to a predefined set of devices orcontrollers. Since a channel may support one or more devices orcontrollers, the channel programs that are associated with a channelwill comprise the commands that the channel is responsive to in additionto the commands for the various devices and controllers to which thechannel may be associated. Thus, an operating system has only toassemble the I/O commands for a respective channel program andthereafter execute a single I/O machine instruction to initiate thechannel program; wherein thereafter the channel will take responsibilityof the I/O task until the completion of the task.

Often implemented in conjunction with channel I/O operations,peer-to-peer remote copy (PPRC) describes a protocol that is implementedin order to mirror a primary storage volume to the same or differentcontrol unit that is associated with a secondary storage volume. Assuch, the utilization of synchronous PPRC causes each write operation tothe primary storage to be performed at the secondary storage volume aswell. The respective definitions of primary and secondary storagevolumes each consume a device address within the addressable devicespace. The secondary storage volume device address is not addressable byapplication programs and, therefore, its device address reduces thetotal device addressability for application programs.

SUMMARY OF THE INVENTION

The shortcomings of the prior art are overcome and additional advantagesare provided through the provision of a method for defining andaccessing peer-to-peer remote copy secondary devices within a subchannelset other than subchannel set zero while maintaining transparency toapplication I/O requests. The method comprises identifying a PPRCpairing, the PPRC pairing comprising a set of PPRC primary devicedefinitions and a set of PPRC secondary device definitions that areassociated with the primary device definitions, the PPRC pairing beingassigned to a subchannel set zero, and designating within an operatingsystem that the device definitions of the PPRC secondary device can beassigned to a predetermined subchannel set that is selected fromsubchannel sets other than subchannel set zero. This provides the datareplication of PPRC while eliminating the device addressabilityrequirements of secondary devices in subchannel set zero, thusincreasing the total data addressability of the system. Further, devicesthat are defined in a subchannel set other than zero are not directlyuseable by applications. Only when the subchannels representing theprimary and secondary devices are swapped are the devices directlyutilized by applications.

The method also comprises associating the PPRC secondary device with thepredetermined subchannel set, associating I/O that is associated withthe PPRC secondary device with a parameter value, wherein the parametervalue serves as an indicator of the subchannel set to which the PPRCsecondary device is associated, and executing an I/O request at the PPRCsecondary device utilizing the predetermined subchannel set designation.

Computer program products corresponding to the above-summarized methodsare also described and claimed herein.

Additional features and advantages are realized through the techniquesof the present invention. Other embodiments and aspects of the inventionare described in detail herein and are considered a part of the claimedinvention. For a better understanding of the invention with advantagesand features, refer to the description and to the drawings.

BRIEF DESCRIPTION OF THE DRAWINGS

The subject matter that is regarded as the invention is particularlypointed out and distinctly claimed in the claims at the conclusion ofthe specification. The foregoing and other objects, features, andadvantages of the invention are apparent from the following detaileddescription taken in conjunction with the accompanying drawings inwhich:

FIG. 1 illustrates one example of the device definitions of both primaryand secondary PPRC devices as bases in SS0 while parallel access volumes(PAVs) are defined in SS1.

FIG. 2 illustrates one example showing the 3390B PPRC secondary devicedefinitions (originally shown in FIG. 1) are now redefined as 3390D inSS1 though they could be defined to any subchannel set that is supportedby the z/Architecture. This demonstrates that this definition freesadditional device numbers in SS0 that can now be accessed by applicationI/O programs.

FIG. 3 illustrates one example of a PPRC primary device and PPRCsecondary device swapping operation implemented in accordance withexemplary embodiments of the present invention.

FIGS. 4 and 5 illustrate an example dynamic I/O PPRC primary device andPPRC secondary device reconfiguration in accordance with exemplaryembodiments of the present invention.

FIG. 6 shows a flow diagram illustrating an exemplary method forswapping peer-to-peer remote copy devices in accordance with exemplaryembodiments of the present invention.

The detailed description explains the preferred embodiments of theinvention, together with advantages and features, by way of example withreference to the drawings.

DETAILED DESCRIPTION OF THE INVENTION

One or more exemplary embodiments of the invention are described belowin detail. The disclosed embodiments are intended to be illustrativeonly since numerous modifications and variations therein will beapparent to those of ordinary skill in the art.

PPRC is a conventional synchronous replication technology that is known.All subsequent references to synchronous replication within theexemplary embodiments of the present invention are made in reference tothe utilization of PPRC operations. Within the IBM server System z9system architecture and in the Z/OS operating system there is a 65,536device number limit in the subchannel set zero. Subchannels within thesubchannel set zero and the z/OS operating system are provided with amaximum of 65,536 device numbers that are useable by applications.

Exemplary embodiments of the present invention relate to a methodologyfor relieving the device number constraints within any operating systemby exploiting predefined subchannel sets other than zero by definingPPRC secondary devices within subchannel sets other than zero. As such,exemplary embodiments of the present invention provide device numberconstraint relief by allowing PPRC secondary device definitions thatwere only allowed to be defined within subchannel set zero, to now bedefined in any subchannel set other than zero. Thus, for n paireddevices, this will provide n/2 additional device numbers and subchannelswithin subchannel set zero.

Currently, the management of device numbers and subchannels featuredwithin the various subchannel sets is restricted to an I/O supervisorcomponent of an operating system (OS). This restriction is not theresult of a hardware or microcode restriction but rather a restrictionthat is implemented within the OS itself. The reason for theimplementation of such a restriction is to avoid the myriad code changesthat would be required for the manipulation of the many I/O controlblocks that are required to be accessed during the course of anyapplication required I/O as well as providing the capability todifferentiate between duplicate device numbers that may exist indiffering subchannel sets.

Generally, only the aliases of base parallel access volumes (PAVs) areaccessible from a subchannel set other than subchannel set zero—thisbeing subchannel set one. The aliases that reside within subchannel setone can operate without changing any I/O related application controlblocks since the aliases are performing on behalf of a base device thatstill resides within subchannel set zero; thus, there is no need tochange any associated application control blocks in order to complete anI/O task.

While the assignment of aliases to subchannel set one providessignificant relief for systems that need to implement additional basedevices, additional relief is still needed due to the continued growthin the number of base device numbers that are being employed to supporta need for additional data within computing system environments. In manyinstances PPRC is implemented to replicate important system data in caseof catastrophic failure within the primary subsystem. However, PPRCutilizes a device number for each primary device and secondary devicethat is comprised within a PPRC device pairing.

In operation, PPRC secondary devices are offline to the OS. Further, noapplication I/O is allowed to access a PPRC secondary device. WithinPPRC, the secondary device is kept in sync with the primary device viaI/O that is managed exclusively by an I/O control unit. However, the OSmanages the settings of the I/O control unit in order to establish,interrogate, and disband PPRC device pairs.

As mentioned above, only the aliases of a PPRC primary device areaccessible by application I/O from a subchannel set other thansubchannel set zero—this subchannel set presently being subchannel setone. Further, the present methodology of having a PPRC primary devicedefinition and PPRC secondary device definition reside within the samesubchannel set (subchannel set zero) places undue constraints on thenumber of base devices that may be implemented within a computing systemenvironment. As such, exemplary embodiments of the present inventionprovide a solution for all paired PPRC devices allowing secondary PPRCdevice definitions in a subchannel set other than zero (e.g., subchannelsets one, two, three, etc.); wherein for n paired devices n, anadditional n/2 device numbers and subchannels within subchannel set zeroare provided.

However, since only the OS I/O supervisor component can access anysecondary PPRC devices, in the event of a failure at the control unit ofthe PPRC primary device, exemplary embodiments of the present inventionalso provide a solution that will enable application I/O to beaccessible to the PPRC secondary devices and device definitions thatreside in subchannels sets other than zero.

An exemplary embodiment of the present invention comprises defining PPRCsecondary device definitions in a subchannel set other than subchannelset zero. This aspect is useful in providing space within subchannel setzero wherein additional devices numbers may be associated withsubchannel set zero. FIG. 1 is a diagram illustrating a subchannel setzero (SS0) 105, wherein the SS0 105 comprises a set of PPRC primarydevice definitions 115 and a set of PPRC secondary device definitions120. Further illustrated is a subchannel set one (SS1) 110, wherein SS1110 comprises a set of PAV aliases that are associated with the PPRCprimary device definitions 115 that currently reside within SS0 105. Aset of I/O control operations 130 that are required for performing I/Orequest operations utilizing the PPRC primary device definitions 115 arealso shown.

As shown in FIG. 2, by use of a device definition operation, the PPRCsecondary device definitions 120 are now defined in SS1 110 and nolonger defined in SS0 105 (within exemplary embodiments any subchannelset other than zero can be implemented). To differentiate between theduplicate PPRC device numbers that will reside within the two subchannelsets SS0 105 and SS1 110, the PPRC secondary devices are designatedwithin the OS as having the capability to be assigned to SS1 110. Thus,the operating system code that interrogates and manages the PPRC devicepairing would maintain this designation within its control blockrepresentations of the PPRC device pairing. Thereafter, any devicespecific I/O that needed to be directed to the PPRC secondary devicewould pass a parameter indicating that the PPRC device number was in SS1110 thus allowing the I/O supervisor to initiate the I/O request usingthe correct subchannel set designation.

Within exemplary embodiments, the designation of the PPRC secondarydevice as residing within a subchannel set differing from subchannel setzero would require that the PPRC secondary device be defined as aspecial device (in this instance 3390D of the PPRC secondary devicedefinition 120) which would indicate that the PPRC secondary devicedefinition presently resides within SS1 110. Further, the definition ofthe devices (i.e., the operating system data structure that representsthe device, the unit control block (UCB)) would associate the PPRCprimary device number with the PPRC secondary device number. Withinexemplary embodiments this associative relationship is implemented notonly by defining the PPRC secondary device with a special deviceattribute (3390D of PPRC secondary device definition 120) but also bydefining the PPRC secondary device with a duplicate device number of thePPRC primary device—except that in this instance the device number wouldreside in SS1 110.

As shown in FIG. 3, the PPRC primary device definition 220 address is00414, with the first digit of the device number, zero, representing alocation in the subchannel set zero, while the PPRC secondary devicedefinition 215 address is 10414 with the first digit of the devicenumber, one, representing a location in subchannel set one. Each ofthese device numbers is pointed to by a device number lookup tablecalled the UCB Lookup Table (ULUT) 210 or 205 respectively. The ULUTs210 and 205 are implemented in the event that a lookup service is beingutilized to obtain the address of a device's UCB 220, 215 in order toperform I/O related functions.

Within exemplary embodiments of the present invention in order toestablish PPRC device pairings, perform device interrogates, break apartPPRC device pairs, or re-synchronize PPRC device pairs, etc., OSfunctions that perform these tasks using device numbers expand theirdevice number representations to include both the device number of thePPRC device and the subchannel set in which the PPRC device resides.PPRC functions can implement conventional UCB lookup services (e.g.,such as UCBLOOK and UCBSCAN) in order to utilize the new device numberand subchannel set indications. Further, the I/O requests issued to thePPRC devices and control units to perform various tasks would use theUCB addresses found using specific subchannel sets.

Application I/O requests for the PPRC primary device will continuewithout change to utilize the UCB address 220 of the control blockrepresenting the PPRC primary device that is connected to the subchannelresiding within subchannel set zero 105. Applications obtain the deviceaddress information (UCB address) using services that are currentlyprovided to the application (i.e., lookup services such as UCBLOOK andUCBSCAN). Since the applications have made no changes, these servicescan rapidly obtain the addressing information for the PPRC primarydevice.

The present exemplary embodiment further provides a solution for theoccurrence of a control unit failure in which the PPRC secondary deviceis required to assume the operations of the PPRC primary device in sucha way that application I/O can proceed without interruption. In thisinstance a PPRC device definition 115, 120 swap 235 is implementedeither via command or programmatically to stop using the failing PPRCprimary device and begin using the PPRC secondary device. When thisoccurs, in order to prevent application I/O from having any awareness ofthe change in PPRC devices, the physical information is swapped betweenthe UCB definitions 220, 215 of the PPRC primary and secondary devices.This way, the UCB addresses remain the same for the application, but thephysical PPRC devices are now reversed. Further, the subchannelinformation blocks 230, 225 are reversed as well and the correspondingULUT 210, 205 entries in both subchannel sets 105, 110 are marked with aset bit as swapped. This bit setting operation allows special lookupoptions as required by PPRC management functions in the UCBLOOK andUCBSCAN services to correctly return a required UCB address. Thisoperation is transparent to the application I/O since these applicationsuse lookup services that are not special requests for devices withindifferent subchannel sets.

Once the failing control unit is recovered, a system user may choose tore-establish the original PPRC pairing using the repaired device as theprimary device of the PPRC pair. The user will invoke the PPRCmanagement component which then issues the UCB lookup services in orderto obtain the current UCB addresses of the PPRC devices and based on theswap bits 235 that have been set in the ULUT, will obtain the correctUCB address for the current active device as well as the repaireddevice. As a result, subsequent OS I/O requests will be directed to thecorrect physical device and not be dependent on maintaining an awarenessof the current subchannel set within its control block structures.

Once the PPRC device pairs are re-established, the user may initiate theswap process again in order to reverse the PPRC primary device back tothe repaired device, thus swapping the physical characteristics of thePPRC primary devices and PPRC secondary devices and reversing thesubchannel set identification back to its original state. Upon thecompletion of this operation the ULUT 210, 205 swap bits are reset andany special requests will be now directed to the original UCB addresses(220, 215) within the original subchannel set.

A further exemplary embodiment of the present invention provides amechanism for the movement of a PPRC secondary device definitionresiding in a subchannel set other than zero (e.g., subchannel set one,two, three, etc.) to subchannel set zero in order to allow applicationI/O to access the PPRC secondary device definitions in the event of acontrol unit failure occurrence in which the PPRC secondary device needsto become the PPRC primary device so that application I/O can proceedwithout interruption. In this instance dynamic I/O reconfiguration isimplemented to move the secondary device definitions from subchannel setother than zero to subchannel set zero.

As shown in FIGS. 4 and 5, dynamic I/O reconfiguration (dynamicactivate) involves the saving of the PPRC primary device definitions 115and the PPRC secondary device definitions 120 from their respectivesubchannel sets (SS0 105 and SS2 140) and deleting the original PPRCprimary and secondary device definitions 115, 120 from the subchannelsets (SS0 105 and SS2 140) where the device definitions originallyresided via a dynamic activate operation. Then further, adding back viaanother dynamic activate operation the PPRC primary device definitions115 to the Subchannel set wherein the PPRC secondary device definition120 resides (SS2 140) and copying the PPRC secondary device definitions120 to the subchannel set wherein the PPRC primary device definitions115 reside (SS0 105).

Within exemplary embodiments of the present invention the PPRC devicenumbers will not be swapped since the device numbers within anysubchannel set other than zero are not accessible via the normal set ofcommands (e.g., device displays and configuration type commands such asvary device and vary path as well as allocation processing, etc.).Further, the UCB for each device definition will not be deleted, butrather, will continue to reside at their respective addresses. At theend of this process, the former PPRC primary device definitions 115 willreside in SS2 140 while the former PPRC secondary device definitionswill reside in SS0 105. This aspect allows the OS I/O supervisor tocontinue to drive all base application I/O to only those devicesresiding in SS0 105 using the UCB control block at the same address instorage, and further, this allows all device dependent informationrelated to the status of the PPRC device pair to be properly exchangedand maintained.

FIG. 6 shows a flow diagram illustrating an exemplary method forswapping peer-to-peer remote copy (PPRC) device definitions between asubchannel set other than zero and subchannel set zero. At step 605 oneor more PPRC primary and secondary device pairs are identified forpurposes of a subchannel set swap operation, wherein the PPRC primarydevice definitions reside at subchannel set zero and the PPRC secondarydevice definitions reside at a subchannel set n—wherein subchannel set nis a subchannel set other than subchannel set zero. At step 610 thecontrol block information for each PPRC device whose device definitionis to be swapped is stored.

At steps 615 and 620 the original PPRC primary and secondary devicedefinitions are deleted from the subchannel sets in which the devicedefinitions originally resided. At steps 625 and 630 the PPRC primarydevice definitions are added via a dynamic activate operation to thesubchannel set n where the PPRC secondary device definitions originallyresided and the PPRC secondary device definitions are added via dynamicactivate to the subchannel set zero where the PPRC primary devicedefinitions originally resided. Lastly, at step 635, the application I/Ocontinues to be driven to PPRC secondary devices that currently residewithin subchannel set zero.

The capabilities of the present invention can be implemented insoftware, firmware, hardware or some combination thereof.

As one example, one or more aspects of the present invention can beincluded in an article of manufacture (e.g., one or more computerprogram products) having, for instance, computer usable media. The mediahas embodied therein, for instance, computer readable program code meansfor providing and facilitating the capabilities of the presentinvention. The article of manufacture can be included as a part of acomputer system or sold separately.

Additionally, at least one program storage device readable by a machine,tangibly embodying at least one program of instructions executable bythe machine to perform the capabilities of the present invention can beprovided.

The flow diagrams depicted herein are just examples. There may be manyvariations to these diagrams or the steps (or operations) describedtherein without departing from the spirit of the invention. Forinstance, the steps may be performed in a differing order, or steps maybe added, deleted or modified. All of these variations are considered apart of the claimed invention.

While the preferred embodiment to the invention has been described, itwill be understood that those skilled in the art, both now and in thefuture, may make various improvements and enhancements which fall withinthe scope of the claims which follow. The claims should be construed tomaintain the proper protection for the invention first described.

1. A method for defining and accessing a peer-to-peer remote copysecondary device within a subchannel set other than subchannel set zerowhile maintaining transparency to application I/O requests, the methodcomprising: identifying a peer-to-peer remote copy (PPRC) pairing, thePPRC pairing comprising a PPRC primary device definition correspondingto a PPRC primary device and a PPRC secondary device definitioncorresponding to a PPRC secondary device that is associated with theprimary device definition, the PPRC pairing being assigned to asubchannel set zero; designating within an operating system that a PPRCsecondary device definition can be assigned to a predeterminedSubchannel set other than subchannel set zero; associating the PPRCsecondary device with the predetermined subchannel set; associating I/Othat is associated with the PPRC secondary device with a parametervalue, wherein the parameter value serves as an indicator of thesubchannel set with which the PPRC secondary device is associated; andexecuting, an I/O request at the PPRC secondary device utilizing thepredetermined subchannel set.
 2. The method of claim 1, whereinassociating the PPRC secondary device with the predetermined subchannelset comprises associating the PPRC secondary device with a devicedefinition that indicates that the PPRC secondary device resides withinthe predetermined subchannel set.
 3. The method of claim 1, whereindevice definitions that are respectively associated with the PPRCprimary device and the PPRC secondary device associate a device numberof the PPRC primary device with a device number of the PPRC secondarydevice.
 4. The method of claim 1, wherein the PPRC secondary device isassociated with a duplicate of a device address of the PPRC primarydevice, wherein the device address and the duplicate of the deviceaddress each comprise a designator value that indicates the subchannelset where the corresponding device is located.
 5. The method of claim 1,further comprising, in event of a control unit failure at the PPRCprimary device, implementing the PPRC secondary device to take over I/Ooperations of the PPRC primary device.
 6. The method of claim 5, furthercomprising reestablishing the PPRC primary and secondary device pairupon recovery of a failed control unit.
 7. The method of claim 5,wherein physical information contained within the PPRC primary devicedefinition and the PPRC secondary device definition is switched in orderto implement a takeover by the PPRC secondary device of operations ofthe PPRC primary device.
 8. The method of claim 7, wherein, as a resultof switching the physical information contained within the devicedefinitions, control block addresses of the device definitions remainthe same, while the PPRC devices and the subchannel sets that areassociated with the control block addresses are reversed.
 9. The methodof claim 8, further comprising setting a bit in an entry within acontrol block look-up table that corresponds to the control blockaddresses.
 10. The method of claim 8, further comprising switching thephysical information contained within the PPRC primary device definitionand the PPRC secondary device definition upon the recovery of a failedcontrol unit, wherein physical devices and the subchannel sets that areassociated with the control block addresses for the PPRC primary deviceand the PPRC secondary device are reversed.
 11. A computer programproduct that includes a computer readable medium useable by a processor,the medium having stored thereon a sequence of instructions which, whenexecuted by the processor, causes the processor to define peer-to-peerremote copy secondary devices within a subchannel set other thansubchannel set zero, by: identifying a peer-to-peer remote copy (PPRC)pairing, the PPRC pairing comprising a set of PPRC primary devicedefinitions and a set of PPRC secondary device definitions that areassociated with the primary device definitions, the PPRC pairing beingassigned to a subchannel set zero; designating within an operatingsystem that the device definitions of the PPRC secondary device can beassigned to a predetermined subchannel set that is selected fromsubchannel sets other than subchannel set zero; associating the PPRCsecondary device with the predetermined subchannel set; associating I/Othat is associated with the PPRC secondary device with a parametervalue, wherein the parameter value serves as an indicator of thesubchannel set to which the PPRC secondary device is associated; andexecuting an I/O request at the PPRC secondary device utilizing thepredetermined subchannel set designation.
 12. The computer programproduct of claim 11, wherein associating the PPRC secondary device withthe predetermined subchannel set comprises associating the PPRCsecondary device with a device definition that indicates that the PPRCsecondary device resides within the predetermined subchannel set. 13.The computer program product of claim 11, wherein device definitionsthat are respectively associated with the PPRC primary device and thePPRC secondary device associate a device number of the PPRC primarydevice with a device number of the PPRC secondary device.
 14. Thecomputer program product of claim 11, wherein the PPRC secondary deviceis associated with a duplicate of a device address of the PPRC primarydevice, wherein the device address and the duplicate oil the deviceaddress each comprise a designator value that indicates the subchannelset where the corresponding device is located.
 15. The computer programproduct of claim 11, further comprising, in event of a control unitfailure at the PPRC primary device, implementing the PPRC secondarydevice to take over I/O operations of the PPRC primary device.
 16. Thecomputer program product of claim 15, further comprising reestablishingthe PPRC primary and secondary device pair upon recovery of a failedcontrol unit.
 17. The computer program product of claim 15, whereinphysical information contained within the PPRC primary device definitionand the PPRC secondary device definition is switched in order toimplement a takeover by the PPRC secondary device of operations of thePPRC primary device.
 18. The computer program product of claim 17,wherein, as a result of switching the physical information containedwithin the device definitions, control block addresses of the devicedefinitions remain the same, while the PPRC devices and the subchannelsets that are associated with the control block addresses are reversed.19. The computer program product of claim 18, further comprising settinga bit in an entry within a control block look-up table that correspondsto the control block addresses.
 20. The computer program product ofclaim 18, further comprising switching the physical informationcontained within the PPRC primary device definition and the PPRCsecondary device definition upon the recovery of a failed control unit,wherein physical devices and the subchannel sets that are associatedwith the control block addresses for the PPRC primary device and thePPRC secondary device are reversed.